The present application claims priority to Japanese application No P10-249353 filed on Sep. 3, 1998 in Japan.
1. Field of the Invention
The present invention generally relates to an information processing apparatus, an information processing method and a presentation medium. More particularly, the present invention relates to an information processing apparatus, an information processing method and a presentation medium for describing a virtual shared space using Virtual Reality Modeling Language (VRML).
2. Description of the Related Art
A Virtual Reality Modeling Language (VRML) is a descriptive language which can be used for uniformly handling 3-dimensional information by utilizing a construction of a World Wide Web (xe2x80x9cWWWxe2x80x9d or xe2x80x9cthe webxe2x80x9d) for providing various kinds of information over the internet at a worldwide scale. The web has been developed by the European Center for Nuclear Research (CERN) of Switzerland, and enables information including text, picture, sound and the like to be transmitted asynchronously to an information processing terminal such as a personal computer in accordance with a protocol called a Hyper Text Transfer Protocol (HTTP) so that the information can be viewed and heard in HTTP format. HTTP is a protocol for transmitting files described in the HTML format over the internet and operates to transmit hypertext information of an HTML file to a client terminal in response to a request issued to the web server from client terminal.
A web server includes a server software called HTTP daemon and HTML files each used for storing hypertext information. The daemon software is a computer program executed for carrying out control and processing in the background in a UNIX environment. The hypertext information is expressed by using a descriptive language called an Hyper Text Markup Language (HTML). In an hypertext description using HTML, a logical structure of a statement is expressed by a format specification called a tag sandwiched between the symbols xe2x80x9c less than xe2x80x9d and xe2x80x9c greater than xe2x80x9d. A link to other information is described by using a link information called an anchor. When a location of information is specified by using the anchor, a string of characters called a Uniform Resource Locator (URL) is utilized.
A popular environment for utilizing the web is a client software called a web browser such as Netscape Navigator(copyright) available from Netscape Communications, Inc., of Internet Explorer(copyright) available from Microsoft Corporation. By using such web browsers, it is possible to view a home page which is a file specified by a URL in the web server on the internet built at a worldwide scale through internet surfing in which home pages connected to each other by links are traced sequentially one after another in order to allow user accesses to a variety of information sources on the web.
In recent years, the web is further expanded, making it possible to describe a 3-dimensional virtual space and to set hypertext links to objects rendered by 3-dimensional graphics. Specifications of a 3-dimensional graphics descriptive language called the Virtual Reality Modeling Language (VRML) have been proposed such that, by tracing such links, web servers can be accessed sequentially one after another.
A VRML browser has also been developed for displaying a 3-dimensional space described in accordance with the specifications of the VRML. Details of the VRML are described in, for example, Knowing VRML: Browsing and Building Cyberspace by Mark Pesce, and translated by Kohichi Matsuda, Terunao Kamachi, Shoichi Takeuchi, Yasuaki Honda, Junichi Koyomoto, Sadayuki Ishikawa, Ken Miyashita and Kazuhiro Hara, first edition of Mar. 25, 1996, Prentice Hall publication ISBN4-931356-37-0 (which is a Japanese translation of VRML: Browsing and Building Cyberspace by Mark Pesce, 1995 New Readers Publishing ISBN 1-56205-498-8), and Recent Trends in VRML and CyberPassage by Kohichi Matsuda and Yasuaki Honda, bit (Kyoritsu publication)/1996, Vol. 28, No. 7, pages 29 to 36, No. 8, pages 57 to 65, No. 9, pages 29 to 36 and No. 10, pages 49 to 58.
In addition, the specifications of Version 2.0 of the Virtual Reality Modeling Language (ISO/IEC CD 14772) is available at the following URL: http://www.vrml.org/Specifications/VRML2.0/FINAL/spec/index.html. A Japanese version of the specifications is also available at the following URL: http://www.webcity.co.jp/info/andoh/VRML/vrml2.0/spec-jp/index.html.
A Community Place(copyright) Browser/Bureau is a typical browser for VRML2.0 and software for a shared server are developed as a product by Sony Corporation, the assignee of the present invention. Its prototype xcex2 version can be accessed at the following URL: http://vs.sony.co.jp.
VRML2.0 can be used to describe and express an autonomous behavior of an object in a 3-dimensional virtual space. VRML contents expressing an object dynamically moving around in a 3-dimensional virtual space are created using VRML2.0 through a process described below. It should be noted that in the following description, VRML contents are a set of script files and VRML files for expressing a sequence of behaviors of an object in a virtual space.
A sequence of processes to create VRML contents is described below.
Model creation is a process to describe attributes of an object (or a model) located in a virtual space such as the shape and the position of the object using VRML2.0 to create a basic VRML file. Sensor-node description is a process to add a description of a sensor node to a VRML file. An example of the sensor node is a TouchSensor which generates an event when a click operation or a pointing operation is carried out by using a mouse for an object in a virtual space. Another example of the sensor node is a TimeSensor which generates an event when a time set in advance is reached.
Additionally, routing edit is a process to add a description of a routing to a VRML file. The routing is used for propagating an event generated by an operation such as a pointing operation for an object for which a sensor node is added. Moreover, script-node description is a process to add a description of a script node for passing an event propagated by a routing to an external script and to add the description to a VRML file. Finally, script-file creation is a process to describe (to program) a script in a language such as Java(copyright) language developed by Sun Microsystems, Inc., for expressing a behavior set in advance for each object in a virtual space on the basis of an event propagated through a script node. Accordingly, the desired VRML contents are created through a sequence of processes work described above.
When creating VRML contents expressing an autonomous behavior of an object in a 3-dimensional virtual space on the basis of VRML2.0, existing authoring software known as a modeler is used to create the shape of an object or animation, and to output the created object or the created animation as a file in VRML2.0 format. An example of the authoring software is Studio Max(copyright). If the modeler does not support the VRML2.0 format, it is then necessary to convert the format of the created file into the VRML2.0 format by using a converter or other equivalent means.
Then, the descriptions of a variety of sensor nodes using VRML2.0 are added to a VRML file using a text editor. The process to create a script written in the Java(copyright) language, to add a script node for the script, to add a route statement, and so on, is carried out repeatedly. In the actual operation verification, the VRML browser for VRML2.0 is activated to verify the behavior of the object by carrying out operations such as a click operation by using a mouse.
With the VRML2.0, the user is capable of defining a new node type and extending an existing node type. In addition, a defined node can be used as if the node were an existing built-in node. A technique used by the user to define a node as described above is called prototyping and the defined node is called a prototype. A keyword PROTO is used to define such prototype.
An example of an extended node defined by using the keyword PROTO is a Sony_WorldInfo announced by Sony Corporation, the assignee of the present application. The Sony_WorldInfo extended node describes attributes of a multi-user world in which a plurality of users share a virtual space using the Community Place Browser described above. It should be noted that details of the Sony_WorldInfo extended node and other information are described in, for example, Java+VRML: Interactive 3D World Created by Using Java and VRML2.0, by Roger Lee and translated by Kohichi Matsuda and Ken Miyashita, a Prentice Hall publication with the original publication entitled Java for 3D VRML Worlds.
To create a multi-user world, a virtual shared space is set in the multi-user world. A port number and an address of a server are added to its VRML file. It should be noted that the setting described above is described by an extended node. Furthermore, by preparing an appropriate file for describing the relationship between the VRML file of an avatar, a picture file of the avatar, their indexes, an operation button picture of the avatar and the operation button and the operation of the avatar, a multi-user world can be created. It is to be noted that an avatar as used herein refers to an incarnation of a user which is an object representing the user itself appearing in a virtual environment. The term avatar originates from an Indian myth and refers therein to the incarnation of a Hindu deity.
However, a VRML2.0 authoring system does not include sufficient support for editing such prototypes such that, to define a new node as a prototype, the descriptions must be written through manual work. In addition, in the conventional authoring system, the operation of an avatar cannot be verified and an avatar cannot thus be edited.
In view of the foregoing, an information processing apparatus for describing a virtual shared space in accordance with one embodiment of the present invention comprises: a first display control means for controlling a display of a multi-user window for editing information necessary for describing the virtual shared space; a control means for controlling symbols displayed in the virtual shared space; a second display control means for controlling a display of a library window showing a list of symbols controlled by the control means; a detection means for detecting a drag-and-drop operation carried out by the user from the library window displayed by the second display control means to the multi-user window displayed by the first display control means; and a description means for describing information on symbols controlled by the control means in a predetermined file for a user operation detected by the detection means.
An information processing method for describing a virtual shared space in accordance with another embodiment of the present invention comprises: a first display control step of controlling a display of a multi-user window for editing information necessary for describing the virtual shared space; a control step of controlling symbols displayed in the virtual shared space; a second display control step of controlling a display of a library window showing a list of symbols controlled at the control step; a detection step of detecting a drag-and-drop operation carried out by the user from the library window displayed at the second display control step to the multi-user window displayed at the first display control step; and a description step of describing information on symbols controlled at the control step in a predetermined file for a user operation detected at the detection step.
A presentation medium for presenting a program executable by a computer to drive an information processing apparatus for describing a virtual shared space to carry out processing in accordance with yet another embodiment of the present invention includes: a first display control step of controlling a display of a multi-user window for editing information necessary for describing the virtual shared space; a control step of controlling symbols displayed in the virtual shared space; a second display control step of controlling a display of a library window showing a list of symbols controlled at the control step; a detection step of detecting a drag-and-drop operation carried out by the user from the library window displayed at the second display control step to the multi-user window displayed at the first display control step; and a description step of describing information on symbols controlled at the control step in a predetermined VRML file for a user operation detected at the detection step.
Accordingly, in accordance with the present invention, information on controlled symbols corresponding to detected user operations is described in a VRML file so that a virtual shared space can be more easily described.
These and other features and advantages of the present invention will be understood upon consideration of the following detailed description of the invention and the accompanying drawings.